// Decompiled by GOOSIN CO,LTD Copyright 2010 Pavel Kouznetsov.
// home page: http://www.Goosin.net
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   manufactureProcedure_draft_ok.java

package draft.qcs;

import com.jspsmart.upload.*;
import include.nseer_cookie.*;
import include.nseer_db.nseer_db_backup1;
import java.io.File;
import java.io.IOException;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.jsp.JspFactory;

public class manufactureProcedure_draft_ok extends HttpServlet
{

	public manufactureProcedure_draft_ok()
	{
	}

	public synchronized void service(HttpServletRequest request, HttpServletResponse response)
		throws IOException, ServletException
	{
		HttpSession dbSession = request.getSession();
		JspFactory _jspxFactory = JspFactory.getDefaultFactory();
		javax.servlet.jsp.PageContext pageContext = _jspxFactory.getPageContext(this, request, response, "", true, 8192, true);
		ServletContext dbApplication = dbSession.getServletContext();
		try
		{
			HttpSession session = request.getSession();
			ServletContext context = session.getServletContext();
			String path = context.getRealPath("/");
			counter count = new counter(dbApplication);
			SmartUpload mySmartUpload = new SmartUpload();
			mySmartUpload.setCharset("UTF-8");
			nseer_db_backup1 qcs_db = new nseer_db_backup1(dbApplication);
			if (qcs_db.conn((String)dbSession.getAttribute("unit_db_name")))
			{
				mySmartUpload.initialize(pageContext);
				String file_type = getFileLength.getFileType((String)session.getAttribute("unit_db_name"));
				long d = getFileLength.getFileLength((String)session.getAttribute("unit_db_name"));
				mySmartUpload.setMaxFileSize(d);
				mySmartUpload.setAllowedFilesList(file_type);
				try
				{
					mySmartUpload.upload();
					String qcs_id = mySmartUpload.getRequest().getParameter("qcs_id");
					String config_id = mySmartUpload.getRequest().getParameter("config_id");
					String manufacture_id = mySmartUpload.getRequest().getParameter("manufacture_id");
					String item[] = mySmartUpload.getRequest().getParameterValues("item");
					if (item != null)
					{
						String file_name[] = new String[mySmartUpload.getFiles().getCount()];
						String not_change[] = new String[mySmartUpload.getFiles().getCount()];
						Date now = new Date();
						SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
						String time = formatter.format(now);
						String standard_id = mySmartUpload.getRequest().getParameter("standard_id");
						String sqla = (new StringBuilder("select attachment1 from qcs_manufacture_procedure where qcs_id='")).append(qcs_id).append("' and (check_tag='5' or check_tag='9')").toString();
						ResultSet rs = qcs_db.executeQuery(sqla);
						if (!rs.next())
						{
							response.sendRedirect("draft/qcs/manufactureProcedure_ok.jsp?finished_tag=1");
						} else
						{
							String attachment[] = mySmartUpload.getRequest().getParameterValues("attachment");
							String delete_file_name[] = new String[0];
							if (attachment != null)
							{
								delete_file_name = new String[attachment.length];
								for (int i = 0; i < attachment.length; i++)
									delete_file_name[i] = rs.getString(attachment[i]);

							}
							for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++)
							{
								SmartFile file = mySmartUpload.getFiles().getFile(i);
								if (file.isMissing())
								{
									file_name[i] = "";
									int q = i + 1;
									String field_name = (new StringBuilder("attachment")).append(q).toString();
									if (!rs.getString(field_name).equals(""))
										not_change[i] = "yes";
								} else
								{
									int filenum = count.read((String)dbSession.getAttribute("unit_db_name"), "qcsAttachmentcount");
									count.write((String)dbSession.getAttribute("unit_db_name"), "qcsAttachmentcount", filenum);
									file_name[i] = (new StringBuilder(String.valueOf(filenum))).append(file.getFileName()).toString();
									file.saveAs((new StringBuilder(String.valueOf(path))).append("qcs/file_attachments/").append(filenum).append(file.getFileName()).toString());
								}
							}

							String apply_id = mySmartUpload.getRequest().getParameter("apply_id");
							String product_id = mySmartUpload.getRequest().getParameter("product_id");
							String product_name = mySmartUpload.getRequest().getParameter("product_name");
							String qcs_amount = mySmartUpload.getRequest().getParameter("qcs_amount");
							String qcs_time = mySmartUpload.getRequest().getParameter("qcs_time");
							String procedure_name = mySmartUpload.getRequest().getParameter("procedure_name");
							String quality_way = mySmartUpload.getRequest().getParameter("quality_way");
							String accept = mySmartUpload.getRequest().getParameter("accept");
							String reject = mySmartUpload.getRequest().getParameter("reject");
							String quality_solution = mySmartUpload.getRequest().getParameter("quality_solution");
							String sampling_standard = mySmartUpload.getRequest().getParameter("sampling_standard");
							String sampling_amount = mySmartUpload.getRequest().getParameter("sampling_amount");
							String qualified = mySmartUpload.getRequest().getParameter("qualified");
							String unqualified = mySmartUpload.getRequest().getParameter("unqualified");
							String qcs_result = mySmartUpload.getRequest().getParameter("qcs_result");
							String register = mySmartUpload.getRequest().getParameter("register");
							String checker_id = mySmartUpload.getRequest().getParameter("checker_id");
							String register_time = mySmartUpload.getRequest().getParameter("register_time");
							String bodyab = new String(mySmartUpload.getRequest().getParameter("remark").getBytes("UTF-8"), "UTF-8");
							String remark = exchange.toHtml(bodyab);
							sqla = (new StringBuilder("update qcs_manufacture_procedure set apply_id='")).append(apply_id).append("',product_id='").append(product_id).append("',product_name='").append(product_name).append("',qcs_amount='").append(qcs_amount).append("',qcs_time='").append(qcs_time).append("',quality_way='").append(quality_way).append("',accept='").append(accept).append("',reject='").append(reject).append("',procedure_name='").append(procedure_name).append("',quality_solution='").append(quality_solution).append("',sampling_standard='").append(sampling_standard).append("',sampling_amount='").append(sampling_amount).append("',qualified='").append(qualified).append("',unqualified='").append(unqualified).append("',checker_id='").append(checker_id).append("',qcs_result='").append(qcs_result).append("',register='").append(register).append("',register_time='").append(register_time).append("',remark='").append(remark).append("'").toString();
							String sqlb = (new StringBuilder(" where qcs_id='")).append(qcs_id).append("'").toString();
							if (attachment != null)
							{
								for (int i = 0; i < attachment.length; i++)
								{
									sqla = (new StringBuilder(String.valueOf(sqla))).append(",").append(attachment[i]).append("=''").toString();
									File file = new File((new StringBuilder(String.valueOf(path))).append("qcs/file_attachments/").append(delete_file_name[i]).toString());
									file.delete();
								}

							}
							for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++)
								if (not_change[i] == null || !not_change[i].equals("yes"))
								{
									int p = i + 1;
									sqla = (new StringBuilder(String.valueOf(sqla))).append(",attachment").append(p).append("='").append(file_name[i]).append("'").toString();
								}

							String sql = (new StringBuilder(String.valueOf(sqla))).append(sqlb).toString();
							qcs_db.executeUpdate(sql);
							sql = (new StringBuilder("delete from qcs_manufacture_procedure_details where qcs_id='")).append(qcs_id).append("'").toString();
							qcs_db.executeUpdate(sql);
							String default_basis[] = mySmartUpload.getRequest().getParameterValues("default_basis");
							String ready_basis[] = mySmartUpload.getRequest().getParameterValues("ready_basis");
							String quality_method[] = mySmartUpload.getRequest().getParameterValues("quality_method");
							String analyse_method[] = mySmartUpload.getRequest().getParameterValues("analyse_method");
							String standard_value[] = mySmartUpload.getRequest().getParameterValues("standard_value");
							String standard_max[] = mySmartUpload.getRequest().getParameterValues("standard_max");
							String standard_min[] = mySmartUpload.getRequest().getParameterValues("standard_min");
							String quality_value[] = mySmartUpload.getRequest().getParameterValues("quality_value");
							String sampling_amount_d[] = mySmartUpload.getRequest().getParameterValues("sampling_amount_d");
							String qualified_d[] = mySmartUpload.getRequest().getParameterValues("qualified_d");
							String unqualified_d[] = mySmartUpload.getRequest().getParameterValues("unqualified_d");
							String quality_result[] = mySmartUpload.getRequest().getParameterValues("quality_result");
							String unqualified_reason[] = mySmartUpload.getRequest().getParameterValues("unqualified_reason");
							for (int i = 0; i < item.length; i++)
								if (!item[i].equals(""))
								{
									sql = (new StringBuilder("insert into qcs_manufacture_procedure_details(qcs_id,item,default_basis,ready_basis,quality_method,analyse_method,standard_value,standard_max,standard_min,quality_value,sampling_amount_d,qualified_d,unqualified_d,quality_result,unqualified_reason,details_number) values('")).append(qcs_id).append("','").append(item[i]).append("','").append(default_basis[i]).append("','").append(ready_basis[i]).append("','").append(quality_method[i]).append("','").append(analyse_method[i]).append("','").append(standard_value[i]).append("','").append(standard_max[i]).append("','").append(standard_min[i]).append("','").append(quality_value[i]).append("','").append(sampling_amount_d[i]).append("','").append(qualified_d[i]).append("','").append(unqualified_d[i]).append("','").append(quality_result[i]).append("','").append(unqualified_reason[i]).append("','").append(i).append("')").toString();
									qcs_db.executeUpdate(sql);
								}

							response.sendRedirect("draft/qcs/manufactureProcedure_ok.jsp?finished_tag=0");
						}
						qcs_db.commit();
						qcs_db.close();
					} else
					{
						response.sendRedirect("draft/qcs/manufactureProcedure_ok.jsp?finished_tag=7");
					}
				}
				catch (Exception ex)
				{
					response.sendRedirect("draft/qcs/manufactureProcedure_ok.jsp?finished_tag=6");
				}
			} else
			{
				response.sendRedirect("error_conn.htm");
			}
		}
		catch (Exception ex)
		{
			ex.printStackTrace();
		}
	}
}
